Voice over ip telephone recording architecture

ABSTRACT

A method and system is disclosed for on-demand recording of a voice session by a telephone recording device in a telecommunication network. After establishing a voice session between the telephone recording device and at least one communication device, a user of the telephone recording device may instruct it to store voice data during the voice session so long as the voice session has not been terminated. During the voice session, the telephone recording device processes and transmits the voice data to and saved at a storage server without going through a centrally located exchange device, wherein the saved voice data is available for on-demand replay.

BACKGROUND OF INVENTION

The present invention relates to a distributed network architecture forrecording a stream of analog or digital data.

In the current state of the industry, in order to record the contents ofa telephone call, computer transmission, television program, or any formor type of analog or digital data transmission, there are two basicmethods. The first method is “logging,” which consists of recordingevery transmission, from initiation until termination, regardless of thecontent or characteristics of the transmission, because logging isindependent of the contents and characteristics of the transmission, ifa specific transmission is to be reviewed, it becomes necessary torecord every transmission. Recording every transmission, however,requires a significant amount of storage space. Further, because of thenumber of transmissions recorded, it is difficult and time-consuming tolocate a specific transmission.

The second method of recording a transmission is “event driven”recording, which records a transmission upon the occurrence of a certaincondition or event. In some instances, the recording condition may bethe start of the transmission (which is, in effect, the logging method),while in other instances the event will occur during the transmission(such as when a user presses a “record” button during the transmission).Other events may be time-based, such as when recording begins and endsat a specific times. One difficulty of an event driven recording systemis properly defining the event that initiates recording. An overly broadevent may record too many transmissions, while too specific of an eventmay not record enough. Another disadvantage of event driven recording isthat the event may occur, or may occur at the wrong time, resulting innot all of the content of the transmission being recorded. Yet anotherdisadvantage is that if the event cannot or does not) occur until afterthe initiation of transmission, then the transmission that occurs priorto the event is not recorded. Further, for communications via computerinstant messenging, a similar disadvantage occurs when the content ofthe conversation may “scroll off” the screen before the user can savethe earlier portions of the conversation.

The above described recording methods all deal with a centralizednetwork architecture. That is, the functional components that managecall control and voice transmission are all centrally located in aPrivate Branch Exchange (PBX) of a private network. More specifically, arecording initiation device such as a recording phone has to obtain allcall control information and voice data for other phones in connectiontherewith from the PBX.

What is needed is distributed network architecture for recording voicedata between telephones.

SUMMARY OF INVENTION

A method and system is disclosed for on-demand recording of a voicesession by a telephone recording device in a telecommunication network.After establishing a voice session between the telephone recordingdevice and at least one communication device, a user of the telephonerecording device may instruct it to store voice data during the voicesession so long as the voice session has not been terminated. During thevoice session, the telephone recording device processes and transmitsthe voice data to and saved at a storage server without going through acentrally located exchange device, wherein the saved voice data isavailable for on-demand replay.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 illustrates a conventional telephone recording system using acentrally located exchange device.

FIG. 2 illustrates a distributed recording system in a telecommunicationnetwork using a recording phone.

FIG. 3 illustrates a flow diagram for implementing the on-demandrecording of a voice session according to one embodiment of the presentinvention.

FIG. 4 illustrates a distributed recording system in a telecommunicationnetwork using a recording phone according to another embodiment of thepresent invention.

FIG. 5 illustrates a distributed recording system in a telecommunicationnetwork using a recording phone according to another embodiment of thepresent invention.

DETAILED DESCRIPTION

The following disclosure provides many different embodiments, orexamples, for implementing different features of an on-demand recordingsystem. Specific examples of components, processes, and implementationsare described to help clarify the invention. These are, of course,merely examples and are not intended to limit the invention from thatdescribed in the claims.

Referring to FIG. 1, a centralized on-demand recording system 100includes an centrally located exchange device 10 connected to a server12 via a network 14. The centrally located exchange device 10 such as aPBX includes a memory buffer 16, such as RAM or a hard drive, aprocessor 18 for converting analog signals into digital signals, and forplacing data into packets. While only one processor 18 is shown, it iscontemplated that a processing system, composed of one or moreprocessors in conjunction with firmware or software, could provideequivalent functionality. The server 12 includes a memory buffer 20,such as random access memory (RAM) or a hard drive, a storage device 22,such as a compact disk (CD-ROM) drive, floppy drive, or hard drive, anda device 24 for receiving a save initiation request. The centrallylocated exchange device 10 is connected to one or more communicationdevices 28 via the network 14. Communication devices 28 may be capableof transmitting or receiving analog or digital signals via the network14. The network may be any type of wired or wireless system fortransmission of signals, including, a plain old telephone switch (POTS)network, computer packet network, or television broadcast system.

Connected to at least one of the communication devices 28 is a saveinitiator 30, which allows a user to initiate a save request. Whiledepicted in FIG. 1 as being connected to one of the communicationdevices 28, the save initiator 30 may instead (or in addition) beconnected to any of the other components or may be a stand-alonecomponent connected to the network, thus allowing the initiation of thesave request by someone other than a user of the communication devices28.

While two parties are engaging in a voice session, the correspondingvoice data is duplicated and digitized by the processor 18 and may bepieced into packets. The packets are then provided over the network andreceived by the server 12. The server 20 extracts (e.g., de-packetizes)the digitized information from the packets and stores the extractedinformation in the memory buffer 20. If a save request signal isinitiated, the save initiator 30 transmits a save request signal forreceipt by the receiver 28. When the connection is terminated, thecontents of the memory buffer 20 on the server 20 is copied onto thestorage device 22. The saved information of the entire connection onstorage device 22 is made available for playback via devices such as thecommunication device 28.

In an enterprise environment wherein a complex telephone system isdeployed, any number of telephones 28 may be connected to any number ofline cards of the centrally located exchange device 10. The line cardsmay contain functional modules that deliver that functions equivalent tothe memory module 16, digitizing processor and packetizing processorsystem 18.

FIG. 2 is a graphic representation for a distributed Voice Over IP(VoIP) telephone network 200 including a telephone recording device suchas a VoIP recording phone 202 other communication devices such asregular VoIP telephones 204 a-d, which may not have the recordingfeature. Although only one VoIP recording phone 302 is shown, it isunderstood that a number of such phones can be connected to the network200. It is assumed that telephones 204 a-c are connected to a hub device206 a, and telephone 204 d and the recording telephone 202 are connectedto another hub device 206 b. The hub device 206 a or 206 b can be anEthernet hub device that are normally used to connect various computingdevices such as another hub device, a storage server such as an IDVRserver 208, or a call control unit such as a call manager 210. The VoIPrecording telephone 202 performs an on-demand recording process toprocess and send all voice data from any other telephone involved in aconversation therewith to the IDVR server for recording purposes withoutgoing through a centrally located exchange device (such as the server 12of FIG. 1). The recording telephone 202 also obtains can controlinformation from the call manager 210 without involving a centrallylocated exchange device.

When a voice session is established between two telephones transmittingvoice data, while at least one of which is a VoIP recording telephone202 and the other is a regular phone such as telephone 204 a, the voicedata initiated by telephone 204 a goes to a local switch device such asthe hub 206 a, further through another hub 206 b, and reaches therecording phone 202. The recording phone 202 will dynamically processand duplicate the voice data received. If the voice data is not alreadyin digital form, it is digitized and packetized by the recording phone202, and sent to the IDVR server 208. The IDVR server 208 will extract(e.g., de-packetize) the digitized voice data from the packets and storethe data in a memory buffering device such as a memory module in theIDVR server. If needed, the voice data is further stored in a persistentmemory device for future replay.

FIG. 3 illustrates a flow diagram 300 for recording a voice session overa VoIP recording network 200. After a voice session is established instep 302, the voice data (either initiated by the recording phone orother noon-recording phone) is packetized by the VoIP recording phone202 and sent to the IDVR server for temporary storage. A temporarymemory buffering device such as a memory buffer of the IDVR server maybe used to tentatively hold the stored information. At any time duringthe voice session and up until the session is terminated, the user ofthe recording phone 202 may request that the information of the entirevoice session be saved for later retrieval by initiating a save requestin step 304. To initiate the save request, the user may only need topush a predetermined button on the recording phone 202. Other userinterfaces may also be possible to send the save request. Although theVoIP recording phone is the instrument processes the save request, it isnoted that it doesn't have to be the user of the VoIP recording phonewho initiates the request, a user on the other end of the line using aregular VoIP telephone can also initiate the process by sending a noticeto the VoIP recording phone. Since the packets are used as the transportmeans for information exchange, it should be understood by one skilledin the art that all other VoIP telephones can send a signal to the VoIPrecording phone to request a conversation session to be saved. It shouldbe noted, however, that the user of the VoIP telephone recording systemdoes not necessarily have to be a user of a telephone 204 a-d or 202.The user can use a computer terminal that can communicate with the VoIPrecording phone. In step 306, the save request signal is sent to andreceived by the IDVR server. Upon receiving the instruction, the IDVRserver stores all the voice data currently stored in the temporarymemory module and any forthcoming voice data in a predeterminedpersistent storage device of the IDVR server for future retrieval (step308). On the other hand, if the save request is never initiated beforethe end of the voice session, the voice data tentatively stored by theIDVR server will be deleted when the voice session ends. The user canretrieve the stored voice data at any time from the IDVR server throughany compatible playback device such as a regular VoIP telephone (step310). In this manner, regardless of when the save request is initiatedduring the session, the entire communication of the yoke session isavailable for playback. It is also understood that the temporary memorybuffering device does not need to be on the IDVR server, it can residein the VoIP phone as well. If so, the VoIP recording phone processes thevoice data and keeps it until it is clear whether the voice data needsto be sent to the IDVR server for storage. In other words, if the yokesession ends without a save request ever issued, the VoIP phone discardsthe content tentatively saved thereon. The hubs shown can be replaced byswitches if required, and the voice session can still be recorded basedon the above described principles. FIG. 3 thus illustrates a distributedcommunication architecture (e.g., most likely within a company) whereintwo or more people can start and record a peer-to-peer conversationwithout involving a centrally located exchange device such as a privatebranch exchange (PBX) or any similar devices.

FIG. 4 illustrates a peer-to-peer VoIP telephone recording system 400involving only one local switch device. The system 400 is similar to thesystem 200 of FIG. 2 except that only one switch 402 is involved. Theswitches, like the hubs, operate at the Ethernet level for thecommunication, and only serve the purpose of routing the packets fromone end to the other of an established communication link. In thisconfiguration, a voice session is carried out with voice datatransmitted only through one single switch. No centrally locatedexchange device is involved at all.

FIG. 5 illustrates a VoIP telephone recording system 500 according toanother embodiment of the present invention. This system 500 connects aVoIP recording phone with a remote VoIP phone through a series ofnetwork devices such as the switches 402 a-b, a gateway device 502, andan IP transport network 504. This illustrates that the voice recordingmechanism as described with FIG. 3 can be extended to a much biggernetwork or even to multiple networks as long as one VoIP recording phoneis operating together with an IDVR server 208 and a call manager 210,which manages the voice session. It is also understood that since theVoIP recording phone transmits packets to the IDVR server 208, the IDVRserver does not have to be physically located in the same network or inthe vicinity of the recording phone. As the packets can travel a longdistance in a short time period, the IDVR server can actually be locatedin a different networks.

The VoIP recording phone 202 shown in FIGS. 2-5 can be easily replacedby computing devices such as personal computers or personal digitalassistants as long as such computer device has the VoIP recordingtelephone function. While packets are used in the preferred embodimentabove, other forms of date, transfer are commonly used by those skilledin the art, including, for example, frames, raw data or tokens.

The present invention as described above thus provides an improvedmethod for allowing the entire telephone conversation, and other streamsof analog or digital data to be recorded when the triggering event torecord the data is initiated during the transmission. It is alsocontemplated by the present invention that various components of theinvention could be combined to reduce the number of components.

While the invention has been particularly shown and described withreference to the preferred embodiments thereof, it will be understood bythose skilled in the art that various changes in form and detail may bemade therein without departing from the spirit and scope of theinvention, as set forth in the following claims.

1.-23. (canceled)
 24. A method for storing a peer-to-peer telephoneconversation session between a telephone recording device and at leastone communication device which does not have a recording feature, themethod comprising: establishing the peer-to-peer telephone conversationsession between the telephone recording device and the communicationdevice through a first local switch device coupled to the telephonerecording device and a second local switch coupled to the communicationdevice and to the first local switch; temporarily saving voice datarepresenting the entire session in a memory buffer of the telephonerecording device; and if a save initiation signal is received during thesession and before the session ends, transmitting the voice datarepresenting the entire session from the memory buffer to a storageserver coupled to the telephone recording device to store the voice datafor later replay.
 25. The method of claim 24 further including:replaying at least part of the stored voice data.
 26. The method ofclaim 24, wherein establishing the peer-to-peer telephone conversationsession includes establishing the session over a voice over IP telephonenetwork.
 27. The method of claim 24, further including: generating thesave initiation signal by pressing a button on the telephone recordingdevice.
 28. The method of claim 24, further including: if a saveinitialization signal is not received during the session and the sessionterminates without receiving the save initialization signal, the voicedate representing the entire session is cleared from the memory bufferwithout transmitting the voice data to the storage server.
 29. A methodfor on-demand recording of a voice session by a telephone recordingdevice in a telecommunication network, the method comprising:establishing a voice session between the telephone recording device andat least one communication device; automatically temporarily storingvoice data representing the voice session in a memory buffer deviceincluded in the telephone recording device, wherein the temporarystoring is automatically initiated upon the establishment of the voicesession; receiving a save initiation signal instructing the telephonerecording device to store the voice data, wherein receiving the saveinitiation signal can occur at any time during the voice session so longas the voice session has not been terminate; and upon receiving the saveinitiation signal, transmitting all of the voice data currently storedin the memory buffer to a persistent memory device in a server, and thentransmitting any forthcoming voice data included in the voice datasession to the persistent memory device until the voice session isterminated.
 30. The method of claim 29, further including: retrievingthe stored voice data from the persistent memory device for replay sometime after the voice session is terminated.
 31. The method of claim 29,wherein establishing the voice session includes: establishing the voicesession through only one single switch.
 32. The method of claim 29,wherein establishing the voice session includes: establishing the voicesession through a first hub device coupled to the telephone recordingdevice and through a second hub device coupled to the at least onecommunication device.
 33. The method of claim 29, wherein establishingthe voice session includes: transmitting signals including analogsignals from the communication device; receiving the analog signals atthe telephone recording device; and digitizing the received analogsignals at the telephone recording device.